<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
   一.中括号-表示区间范围
   重点:中括号要配合-,形成一个区间范围
   [0-9][a-z][A-Z][a-zA-Z][0-9a-zA-Z]
   [3578]:匹配的数字3578中的任意一个数字
   特殊:如果中括号^,表示取反
   [^0-9]:匹配非0-9中的任意一个数字
   [^a-Z]:匹配非0-9中的任意一个数字

   二.大括号:表示匹配的数量
   三种格式
   x{3}:匹配3个x 的字符
   x{3,}:至少匹配3个x 的字符
   x{3,9}:匹配3个x 的字符,最多9个字符

   三.行首^,行尾$
   注意:表示的是从行首一直匹配到行尾
   <hr>
   <br>
   <input type="text" placeholder="请输入您的手机号码">
   <span></span>
   <script>
    console.log(/[1-9]{3}/.test("aaaaa33333a"));//true
    console.log(/[1-9]{3}/.test("aaaaa33a"));//false
    console.log(/^[1-9]{3}$/.test("aaaaa33a"));//false
    console.log(/^5{3,6}$/.test("55555555555555"));//false
    console.log(/^hello$/.test("hello"));//true
    console.log(/^hello$/.test("helloo"));//false
   </script>

   <!-- 案例:文本框输入手机号码 -->
   <script>
        const inputEle=document.querySelector('input');
        const spanEle=document.querySelector('span');
        inputEle.onblur=function(){
            let tel=/^1[35789][0-9]{9}$/;//手机号正则
            if(tel.test(inputEle.value)){
                spanEle.innerHTML="✅";
            }else{
                spanEle.innerHTML="❎";
            }
        }

   </script>

    ### 限定符
    - `*` ： 前一个内容重复至少 0 次，也就是可以出现 **0 ～ 正无穷** 次
    - `+` ： 前一个内容重复至少 1 次，也就是可以出现 **1 ～ 正无穷** 次
    - `?` ： 前一个内容重复 0 或者 1 次，也就是可以出现 **0 ～ 1** 次
    - `{n}` ： 前一个内容重复 n 次，也就是必须出现 **n** 次
    - `{n,}` ： 前一个内容至少出现 n 次，也就是出现 **n ～ 正无穷** 次
    - `{n,m}` ： 前一个内容至少出现 n 次至多出现 m 次，也就是出现 **n ～ m** 次

    <script>
        // +:匹配一个或者多个数量,例如:[a-z]+ 匹配一个或者多个小写字母
        console.log(/^[a-z]$/.test("a"));//true
        console.log(/^[a-z]$/.test(""));//false
        console.log(/^[a-z]+$/.test("aaaaa"));//true

        // *:匹配一个或者多个数量,例如:[a-z]* 匹配0个或者多个小写字母
        console.log(/^[a-z]$/.test("a"));//true
        console.log(/^[a-z]*$/.test("aa"));//true
        console.log(/^[a-z]*$/.test("1"));//false
        console.log(/^[a-z]*$/.test(""));//true

        // ?:匹配0个或者1个数量 匹配0个或者1个小写字母
        console.log(/^[a-z]?$/.test("a"));//true
        console.log(/^[a-z]?$/.test("aa"));//false
        console.log(/^[a-z]?$/.test("1"));//false
    </script>

</body>
</html>